package com.ruoyi.merchant.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 优惠券模板对象 coupon_templates
 * 
 * @author xperia
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class CouponTemplate2 extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /** 优惠券ID */
    private Long couponId;

    /** 优惠券名称 */
    private String name;

    /** 类型：1-满减券，2-折扣券，3-代金券 */
    private Integer type;

    /** 折扣值/金额 */
    private BigDecimal discountValue;

    /** 最低订单金额 */
    private BigDecimal minOrderAmount;

    /** 最大折扣金额（折扣券时有效） */
    private BigDecimal maxDiscount;

    /** 适用区域ID */
    private Long regionId;

    /** 适用商户ID */
    private Long merchantId;

    /** 总数量 */
    private Integer totalQuantity;

    /** 已使用数量 */
    private Integer usedQuantity;

    /** 有效期开始 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date validFrom;

    /** 有效期结束 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date validTo;

    /** 审核状态：0-未审核；1-审核通过；2-未审核通过 */
    private Integer auditStatus;

    /** 状态：0-未启用，1-启用，2-已过期 */
    private Integer status;

    /** 删除时间（软删除） */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date deletedAt;

    /** 预留字段1 */
    private String externField1;

    /** 预留字段2 */
    private String externField2;
}

